生成式AI革命已持续三年,但AI的有效性受到“上下文差距”的限制。 没有正确的上下文,AI模型难以保证相关性,常常产生不准确或“幻觉”的响应。上下文工程旨在解决一个根本问题:在正确的时间以正确的格式提供正确的信息,使AI代理能够执行复杂的、特定于用例的任务。 如今,我们很高兴地宣布,Contextual AI正式加入Elastic AI生态系统——这是一套与Elasticsearch上下文工程平台和向量数据库集成的全面AI技术和工具。 其开放的、可用于生产的架构使其成为大规模构建可靠、上下文驱动的AI应用的理想基础。 通过将Contextual AI用于构建专业RAG代理的端到端上下文工程平台,与某中心的强大向量数据库和统一的Elasticsearch平台相结合,我们正在解决AI开发中最紧迫的挑战:上下文相关性和运营规模
Chat Reducer:让 AI 对话突破上下文限制 一句话简介 Microsoft.Extensions.AI 的 Chat Reducer 通过智能压缩策略,在保持对话质量的前提下,有效控制上下文长度 核心价值 ✅ 突破限制:解决 LLM 上下文窗口限制(如 GPT-4 的 8K/32K tokens) ✅ 成本优化:减少输入 token,显著降低 API 调用成本 ✅ 性能提升:缩短上下文长度,加快模型推理速度 SummarizingChatReducer(摘要压缩器) 利用 AI 自动生成摘要压缩历史对话。 核心特性: 超过阈值时自动调用 AI 生成摘要 摘要存储在 AdditionalProperties 中 渐进式压缩(新摘要包含旧摘要) 保留完整语义上下文 适用场景: 医疗咨询(完整病史重要) 使用计数压缩器 using Microsoft.Extensions.AI; // 创建压缩器,保留最近 3 条消息 var countingReducer = new MessageCountingChatReducer
Agent Builder:AI Agent如何管理上下文 Agent Builder 现已正式 GA。 最终,上下文窗口会被填满,准确率下降,Token 成本攀升。管理上下文已是一个首要问题。 我们还为较长的交互引入了智能上下文压缩:随着对话进行,代理会管理哪些内容留在活动上下文中,哪些被压缩成一个摘要(可在需要时检索)。 借助上下文压缩,即使对话达到 30 轮或更多,上下文窗口依然能保持在限制内,而不是迅速膨胀到最大值。 我们将在代理领域走向何方 能够优化运营数据上下文的代理,需要与我们在 搜索相关性 上多年来投入的 上下文工程 同等程度的精心设计。
Memory(记忆)是任何有效 AI agent 的基础组件。在最核心的层面,memory 存的是过去的用户交互和上下文信息,让 agent 在时间维度上做出更准确的响应。 视情况,agent 可能: 触发一次工具调用 向用户请求澄清 直接给出最终响应 Memory 把 AI agent 从被动响应的系统,变成具备上下文感知的助手。 句子先被切成 token,然后用轻量级 AI embedding 模型把每个 token 转成向量。每个 token 向量会基于周围词提供的上下文做细化。 系统会跨图检索互相连接的上下文,从而支持多跳推理,而不仅仅是语义相似度。 总结 现代 AI agent 想给出准确且个性化的响应,光靠关键词匹配或孤立的语义相似度是不够的。 agent memory 的未来在于从存储信息转向连接知识,让 AI 系统从上下文感知的助手,进一步演进为具备上下文推理能力的协作者。 by Mudassir Fazal 喜欢就关注一下吧
上下文窗口,就是 AI Coding 的片上 RAM。 嵌入式工程师对资源限制很敏感。 现象只在 UART3 DMA 空闲中断路径复现,半传输回调未复现 真正好用的办法是给 AI 做一套上下文分层 我现在更倾向于把 AI Coding 的上下文分成四层。 第 1 层是本轮任务上下文。 AI 不需要一次性吃下所有资料,它只需要在需要的时候拿到正确片段。 这四层配起来,AI 才不需要把所有东西都塞进一个上下文窗口里。 给上下文做预算,别把窗口交给运气 上下文资源有限,就应该有预算。 让 AI 按需取上下文,而不是一次吃完整个仓库 大仓库里,最糟糕的方式是把大量文件一股脑塞进去。 更好的方式是先建立索引,让 AI 先知道去哪里找。 你可以把索引理解成代码仓库的目录缓存。 如果做不到,那上下文再大也只是晚一点溢出。 把上下文管好,AI 才不会只是一个能写代码的聊天窗口。它会慢慢变成项目里的第二块工作台:一边放代码,一边放证据,一边留下下一次还能接着用的经验。
在 AutoDev 1.7.2 中,我们开始构建一个新的 AI Agent 语言:DevIns,即 Development Instruction。 PS:其实原来是叫 DevIn,但是无奈 Devin AI 项目发布了 demo 视频,所以改名为 DevIns。 在 AutoDev 项目中,我们通过构建上下文感知与自定义能力,来实现对于软件开发任务的智能辅助,如自动测试生成与运行、UI 自动生成等。 你可以将你的需求描述成自然语言: 解释代码 /file:src/main/java/com/example/Controller.java 而后,AutoDev 将会结合上下文,并将其编译成对应的指令文本 而当语言接近发布的时候, 在社交媒体上更火的 Devin AI 项目也刚好发布了 demo 视频。 WTF????
距离上一篇VFP AI 插件:超长上下文的识别(一)有些时间了。经过不断的试错和优化,终于完成了 VFP AI 插件的超长上下的识别。将时间从数小时压缩至最多几十分钟。 也意味着,为使用 VFP AI 插件进行项目分析扫清了主要的障碍。 凤凰涅槃,浴火重生!
Elastic与Cursor宣布深化合作,Cursor是一个领先的基于代理构建软件的AI编码平台。Elastic充当这些代理调用的上下文后端,从生产系统大规模提供实时的可观测性、安全性和搜索数据。 双方将上下文工程直接引入代理开发平台,使编码代理能够超越仓库感知,基于实时运营数据给出每一条建议、重构和修复。 可靠、可信的AI始于上下文工程,即构建系统为AI代理提供完成复杂任务所需的精准、有依据的信息和工具。 上下文工程不止于数据层。在Cursor内部,它表现为一个持续循环:代理读取代码、运行测试、观察日志、呈现告警、提出修复,全程不离开编辑器。 Cursor市场上的Elastic插件该插件捆绑了两个互补能力,提供完全上下文工程化的开发体验。
VFP AI 插件在访问大模型时,有一个上下文长度的问题。 对于 DeepSeek 而言,其大小为 128K(=128000 token)。 VFP AI 插件 2025.12.15 版,初步实现超长上下文的处理: 所分析 VCX 类库,使用类浏览器转换出的 prg 格式文件,文件体积为 400+KB,共 10329 行,超过模型最大上下文的最大限制
这是因为大模型有上下文长度限制,对话越长,历史消息越多,就越容易超限。结合我的理解,这篇文章分享一下如何实现上下文压缩,让你的 AI 应用既能"记住"关键信息,又能节省成本。 为什么需要上下文压缩? 面对上下文压缩,我们有三种主流策略: 摘要压缩:让 AI 把历史对话总结成一段摘要。适合长对话场景,比如客服机器人、知识问答。优点是信息损失小,缺点是需要额外 API 调用。 也可以根据 Token 数量判断,超过总上下文的 70% 就压缩。 注意事项: 摘要会丢失细节信息。如果用户问"我刚才说的那个餐厅叫什么",AI 可能答不上来。 太小会丢失上下文,太大又起不到压缩效果。可以根据实际场景调整。 一个改进技巧: 系统消息(System Prompt)要始终保留。它定义了 AI 的角色和行为准则,丢了会影响回复质量。 可以设计一个机制,当 AI 不确定时主动追问:"抱歉,能再告诉我一次您的联系方式吗?" 写在最后 今天我们介绍了三种 AI 对话上下文压缩策略: 摘要压缩:让 AI 总结历史,保留语义完整性。
这不仅是角色扮演,更是一种思维同频: 当你以老板的上下文跟 ta 讲: 谈的是护城河、ROI、资源配置和宏观战略,ta 瞬间就是另一位深谋远虑的合伙人,与你推演商业棋局; 当你以生物学家的上下文跟 ta 在这个过程中,AI 并不是在凭空创造,而是在「共鸣」。 但这往往不是因为 AI 不够聪明,而是因为站在镜子前的人,并没有给出足够清晰的影像。 PART.04 你是谁,便遇见谁 使用 AI 到最后,你会发现这其实是一场向内的修行。 限制 AI 输出上限的,往往不是算力,也不是显卡,而是: 你对问题本质的理解程度; 你构建专业语境的能力; 你自身知识体系的边界。 你是什么,你的 AI 就是什么。
所以业务上下文变更需要慎之又慎。 运行程序上下文 大家应该对一句话有印象:(进程/线程)上下文切换开销很大。这里的上下文一般指的就是运行程序的上下文。 这里的通信问题就是进程上下文切换开销大的缘故。 方法/类所在的上下文(作用域) 方法上下文可以理解为方法所在的作用域。类亦如此。 还有一些比较特殊的概念实际上也是和方法上下文相关。 比如worker语言特性中,需要监听message事件,这实质上,就是在当前上下文监听另一个上下文的状态。再比如回调函数。实际上是因为上下文变更后,对原有上下文访问的一种编程手段。 从这个角度看,闭包实质上也是对上下文的一种操作手段:返回一个函数,该函数在当前上下文可以操作闭包上的上下文。 执行上下文:当函数或方法被调用时,它会创建一个执行上下文,这个上下文包括了局部变量、参数、返回地址等信息。在JavaScript等语言中,执行上下文还包括this的值。
上下文匹配搜索:每次发起会话时,根据上下文信息在向量存储中搜索最匹配的函数。
模型调用:将匹配的函数传递给语言模型,用于生成更准确的响应。 Microsoft.SemanticKernel.Agents.Core,*-*"
#r "nuget:Microsoft.SemanticKernel.Connectors.InMemory,*-*"
#r "nuget:Microsoft.Extensions.AI 初始化 Kernel
通过 Kernel 实现 AI 服务的初始化,包括注册聊天模型和嵌入生成器:
var builder = Kernel.CreateBuilder();
// 添加 Azure 代码如下:
using Microsoft.Extensions.AI;
///
就历史对话的上下文而言,精简文字内容同样适用,这个精简过程被称作“摘要”,意思是摘取主要信息。 企业可以通过火山方舟快速构建自己的AI应用,降低开发成本与技术门槛。 企业可以通过火山方舟快速构建自己的AI应用,降低开发成本与技术门槛。 企业可以通过火山方舟快速构建自己的AI应用,降低开发成本与技术门槛。 本系列的AI应用开发文章目录为《15天学会AI应用开发全目录(零基础小白,零Token消耗)》。
Context Autopilot:全球首个上下文引擎驱动的 AI 办公助手 Context Autopilot 是由 Context 公司推出的一款 AI 办公助手,旨在通过先进的人工智能技术提升工作效率 上下文引擎使用:根据上下文推理与公司需求对齐,并能回忆与任务相关的所有信息。 主要功能特点 AI 驱动的操作系统: 基于 大语言模型(LLM),成为用户智能助手,处理并自动化工作任务。 关键技术 上下文引擎和记忆堆栈 上下文引擎:执行深度推理,挖掘信息中的联系,提供对知识体系的深入理解。 记忆堆栈:具有“状态保持”能力,支持动态上下文处理,使 Autopilot 能够自我优化。 推理与长上下文处理(Long Context Handling) 在长时间任务中保持任务的上下文一致性,优化推理能力,处理复杂任务。
Spec编写:让PRD自动变成技术方案 第3篇:AI编码提效实战:Skill、Rule与上下文工程(本篇) ⏳ 第4篇:AI Code Review:让每一行代码都有AI审查员 ⏳ 第5篇:AI Bug 上下文工程要解决的问题是:在 AI 完成当前任务所需的最小信息集合和上下文窗口容量之间,找到最优平衡点。 3.1 上下文的四个层次 我把 AI 编码时的上下文分成四层,从成本最低到最高: 上下文金字塔 L4:全项目索引 成本最高·效果不确定 ↑ L3:相关文件引用 中等成本·效果好 ↑ L2:模块 每次 AI 生成的代码不符合你的预期,先想想:是 Rule 没覆盖到,还是上下文没给对?然后更新相应的配置文件。 编写:让PRD自动变成技术方案 第3篇:AI编码提效实战:Skill、Rule与上下文工程(本篇) ⏳ 第4篇:AI Code Review:让每一行代码都有AI审查员 ⏳ 第5篇:AI Bug修复与测试生成
【上下文工程是】“……一种精妙的艺术与科学,旨在为下一步操作的上下文窗口填充恰好所需的信息。” LLM应用中常见的上下文类型 在构建LLM应用时,我们需要管理哪些类型的上下文呢? ):上下文内容过多超出模型训练适应范围 - 上下文混淆(Context Confusion):冗余上下文影响响应结果 - 上下文冲突(Context Clash):上下文各部分信息相互矛盾 工具调用产生的上下文会在智能体的多轮交互中不断累积 鉴于此,Cognition公司强调了上下文工程的重要性: “上下文工程”……实际上是构建AI智能体的工程师的首要工作。 在AI工程师世界博览会上,西蒙·威利森(Simon Willison)分享了一个选择失误的例子:ChatGPT从记忆中获取了他的位置信息,并意外地将其注入到用户请求生成的图像中。 选择上下文——将信息拉入上下文窗口,辅助智能体执行任务。 压缩上下文——仅保留执行任务所需的tokens。 隔离上下文——拆分上下文,以帮助智能体执行任务。
大模型其实根本不用懂 模型上下文协议(MCP)如今已成为构建AI智能体时“工具调用”的标准配置。但很多人误解了一点:你的大语言模型(LLM)并不需要理解MCP是什么。 如果你对上下文工程不是很清晰,我之前也整理过关于Agent上下文工程的工作原理,建议粉丝朋友自行查阅,以便更好的理解本文的分享内容:《图解Agent上下文工程,小白都能看懂》MCP 的作用,其实是帮助AI AI回复(可能包含工具调用请求)2. 用户问题(如“旧金山天气如何?”)2. 若需调用工具:标注工具ID、名称及参数3. 三、MCP:开发者的“工具万能接口” 模型上下文协议(MCP)的本质,是一种标准化方法,用于帮助AI智能体连接多种数据源,包括工具、提示语、资源、示例等。 四、回归上下文工程:MCP是来帮你减负的 “上下文工程”的核心在于为模型提供高质量的背景信息,以引导其生成更准确的回复。
(3)AI游戏引擎不同于传统游戏引擎,AI游戏引擎是玩家想象力的“放大器”,任何人可以随心所欲“创造”游戏!AI引擎的崛起带动着生成式游戏的兴起与发展。 (4)质陪解决方案由中关村科金得助智能开发,创造性地融合成熟的AI大模型质检与陪练系统,推出了全面高效的“质陪解决方案”。智能质检采用大小模型结合的方式,对销售人员的销售行为进行全方位监测和分析。 (5)上下文工程上下文工程指通过为任务提供完整的背景信息,让大模型能够合理解决问题。在AI智能体的兴起发展过程中,上下文工程才是决定大多数AI智能体成败的关键而并非模型。 上下文工程致力于设计和构建动态系统而并非字符串,这些系统在恰当的时机提供信息和工具,从而让LLM拥有完成任务所需的一切。
即时上下文就是AI代理开发的终极奥义 我现在跟AI代理打交道的时间越长,就越发现一个真理,这个真理简单到让人想拍大腿,那就是"即时上下文"这四个字简直就是万能钥匙,几乎能打开当前AI代理技术栈里的所有大门 这个发现适用于目前AI代理技术栈里的几乎所有组件,每一个都在印证这个"即时上下文"的真理。 这位老哥观察到,目前所有的AI代理框架和工具(也就是他说的"harnesses"),优化的方向都在朝着即时上下文这个点靠拢。大家都在想办法让上下文加载更智能、更精准、更及时。 即时上下文不仅仅是一个技术细节,它是AI代理架构设计的第一性原理,理解了这一点,就理解了AI代理的过去、现在和未来。 因为AI模型的上下文窗口是有限的,而且每次加载上下文都是要消耗token、消耗算力、消耗时间的。在资源受限的情况下,"精准投放"比"大水漫灌"重要得多。